System and Method for Improving Call Center Communications

ABSTRACT

Methods and systems route requests for service in a call center. A non-transitory computer-readable medium stores data representative of a queue of customers waiting to be serviced. A processor queues a request for service initiated by a customer. Data output is sent to the customer to ascertain the customer&#39;s cause for the request via a data communication channel. Data input is received from the customer via the data communication channel. The data input indicates the customer&#39;s cause for the request. An agent is identified from a plurality of agents suitable to address the customer&#39;s cause for the request. The customer&#39;s position is adjusted in the queue based on the identified agent. A routing instruction is determined about routing the request to the identified agent.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority from U.S. Provisional Application No.62/340,841 filed May 24, 2016, which is hereby incorporated byreference.

TECHNICAL FIELD DISCLOSED

The present invention relates to telecommunications, and in particular,to systems and processes for routing requests for service received via avoice or data communication channel based on information obtained via avoice or data communication channel.

BACKGROUND DISCLOSED

Many call centers use interactive voice response (IVR) systems tocommunicate with callers over the phone. An IVR system automates thecalls, and can act in conjunction with or in place of live agents.Oftentimes, a caller is forced to navigate through tedious, annoying anddifficult to understand voice menus that are prerecorded orcomputer-synthesized. IVR is sometimes criticized as being unhelpful anddifficult to use due to poor design and lack of appreciation of thecallers' needs. When the caller desires to speak to a live agent, thecaller may nonetheless be forced to navigate through the voice menus orplaced in a queue and experience a long wait time when no agent isimmediately available. As a result, the caller oftentimes becomesfrustrated and feels his or her right to speak to a live agent is beingrestricted. After all this, even if the live agent eventually becomesavailable, the caller may again experience frustration when the agentdoes not have adequate knowledge to address the caller's reason for thecall.

It is desirable to have a system that improves its customers'experiences when contacting the call center, and at the same timereduces the operation cost of the call center. It is desirable to enablethe customer to contact the call center or initiate a request forservice by any method of communication, including, but not limited to, acall, a text message, a website or application, a voice interactivedevice or program such as Amazon Alexa, Google Home, and Siri, and avoice interactive program in an automobile such as OnStar, among manyother possibilities. It is desirable to allow the customer to begin aninteraction with a call center solution based on IVR by leveraging atechnology. There is a need for a system that minimizes the caller'sinteraction with the IVR, and determines the caller's cause for requestfor service as quickly as possible so as to direct the caller to asuitable live agent with reduced wait time.

BRIEF SUMMARY

One aspect of the present technology relates to a system for routing arequest for service in a call center. The system includes anon-transitory computer-readable medium storing data representative of aqueue of customers waiting to be serviced. The system also includes aprocessor configured to queue the request for service initiated by acustomer. The processor sends data output to the customer via a datacommunication channel to ascertain the customer's cause for the request.Data input is received from the customer via the data communicationchannel. The data input indicates the customer's cause for the request.A processor identifies one or more agents out of a plurality of agentsthat are suitable to address the customer's request for service. Thecustomer's position in the queue is adjusted based on the identifiedagent and his or her current call queue. The processor determines arouting instruction about routing the request for service to theidentified agent's queue.

Another aspect of the present technology relates to a method for routinga request for service in a call center. The method includes storing, bya non-transitory computer-readable medium, data representative of aqueue of customers waiting to be serviced. One or more processors queuea request for service initiated by a customer. The processor sends dataoutput to the customer via a data communication channel to ascertain thecustomer's cause for the request. The processor receives data input fromthe customer via the data communication channel. The data inputindicates the customer's cause for the request. The processor identifiesone or more agents from a plurality of agents suitable to address thecustomer's cause for the request. The processor adjusts the customer'sposition in the queue based on the identified agent. The processordetermines a routing instruction about routing the customer's request tothe identified agent's queue.

A further aspect of the present technology relates to a non-transitorycomputer-readable medium with computer-executable instructions forcausing one or more processors to execute the computer-executableinstructions as follows. The one or more processors queue a request forservice initiated by a customer. Data output is sent to the customer viaa data communication channel to ascertain the customer's cause for therequest. Data input is received from the customer via the datacommunication channel. The data input indicates the customer's cause forthe request. One or more agents are identified from a plurality ofagents suitable to address the customer's cause for the request. Thecustomer's position in the queue is adjusted based on the identifiedagent. A routing instruction about routing the customer's request to theidentified agent's queue is then determined.

A further aspect of the present technology relates to the systemleveraging machine learning based on the customer action to accuratelypredict a series of answers and solutions helping the customer toreceive a solution as they wait for connection to a customer serviceagent. As the customer continues working through their problemleveraging the artificial intelligence suggestions, the customer eithermoves higher in the queue or completes their query and exits

As customers effectively researches solutions to their specificquestion, performing actions to move up the queue, this reduces theirtime in the queue by moving them up in priority. In addition, rewardscan be offered to customers who can move through the queue as quickly aspossible in the form of a monetary or other prize for eliminating theneed to speak with a customer agent.

Authentication of the customer occurs via one or more forms ofcommunication, including but not limited to, phone, app, mobile, andweb, among many other possibilities. A customer who needs support mayinitiate a request for service by initiating a session. The customer maybe placed in an IVR queue after the customer is authenticated throughhis or her initial mode of connection.

Various aspects of the described example embodiments may be combinedwith aspects of certain other example embodiments to realize yet furtherembodiments. It is to be understood that one or more features of any oneexample may be combined with one or more features of the other example.In addition, any single feature or combination of features in anyexample or examples may constitute patentable subject matter. Otherfeatures of the technology will be apparent from consideration of theinformation contained in the following detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

The following Detailed Description is better understood when read inconjunction with the appended drawings. For the purposes ofillustration, there is shown in the drawings exemplary embodiments, butthe subject matter is not limited to the specific elements andinstrumentalities disclosed.

FIG. 1 illustrates an example block diagram of a call center systemaccording to one aspect of the disclosed technology.

FIG. 2 is a flow chart illustrating example steps executable by aprocessor to route a request for service in the call center systemaccording to one aspect of the present technology.

FIG. 3 is a flow chart illustrating example steps executable by aprocessor to route a request for service according to another aspect ofthe present technology.

FIG. 4 illustrates a high-level process flow of the call center systemaccording to one aspect of the disclosed technology.

FIGS. 5-12 illustrate an exemplary user interface of a customer's mobiledevice when the customer contacts the call center system according toone aspect of the present technology.

DETAILED DESCRIPTION

To facilitate an understanding of the principles and features of thevarious embodiments of the present invention, various illustrativeembodiments are explained below. Although exemplary embodiments of thepresent invention are explained in detail, it is to be understood thatother embodiments are contemplated. Accordingly, it is not intended thatthe present invention is limited in its scope to the details ofconstruction and arrangement of components set forth in the followingdescription or examples. The present invention is capable of otherembodiments and of being practiced or carried out in various ways. Also,in describing the exemplary embodiments, specific terminology will beresorted to for the sake of clarity.

It must also be noted that, as used in the specification and theappended claims, the singular forms “a,” “an” and “the” include pluralreferences unless the context clearly dictates otherwise. For example,reference to a component is intended also to include composition of aplurality of components. References to a composition containing “a”constituent is intended to include other constituents in addition to theone named.

Also, in describing the exemplary embodiments, terminology will beresorted to for the sake of clarity. It is intended that each termcontemplates its broadest meaning as understood by those skilled in theart and includes all technical equivalents that operate in a similarmanner to accomplish a similar purpose.

By “comprising” or “containing” or “including” is meant that at leastthe named compound, element, particle, or method step is present in thecomposition or article or method, but does not exclude the presence ofother compounds, materials, particles, method steps, even if the othersuch compounds, material, particles, method steps have the same functionas what is named.

It is also to be understood that the mention of one or more method stepsdoes not preclude the presence of additional method steps or interveningmethod steps between those steps expressly identified. Similarly, it isalso to be understood that the mention of one or more components in acomposition does not preclude the presence of additional components thanthose expressly identified. Such other components or steps not describedherein can include, but are not limited to, for example, similarcomponents or steps that are developed after development of thedisclosed technology.

1. System Overview

FIG. 1 illustrates an architectural overview of a call center 100. Thecall center 100 may implement a system 110 sized to handle largerequests for service between customers 112 and agents 114. In a typicalcall center scenario, a customer 112 may initiate a request for serviceby dialing a phone number of the call center 100 using his/her mobiledevice 116. Further, instead of dialing the phone number of the callcenter 100, the customer 112 may initiate the request for service bytexting the call center 100 via the mobile device 116. Alternatively,the customer 112 may initiate the request for service from any one ofthe following: a website or application, a voice interactive device orprogram such as Amazon Alexa, Google Home, and Siri, and a voiceinteractive program in an automobile such as OnStar, among many otherpossibilities. The system 110 may route the requests for service toagent terminals 118 to be answered by the agents 114.

The system 110 may communicate with the mobile devices 116 via voice anddata communication channels. Communications may be achieved via one ormore of the following networks: a public-switched telephone network(“PSTN”), a cellular network such as a Global System for MobileCommunications network (“GSM”), a Code Division Multiple Access (“CDMA”)network, 3G/4G network, a satellite communication network, a local areanetwork (“LAN”), such as an Ethernet network, a wide-area network, avirtual network, including without limitation a virtual private network(“VPN”), the Internet, an intranet, an extranet, and a wireless network(e.g., a network operating under any of the IEEE 802.11 suite ofprotocols, the Bluetooth® protocol known in the art, and/or any otherwireless protocol), among other possibilities.

In one example, the voice communication channel may transmit voice overthe PSTN. For example, the mobile device 116 may initiate voicecommunication with the system 110 via the PSTN.

The data communication channel may support wireless data transmission.In one example, the data communication channel may transmit data overthe packet switched network, such as the Internet. The datacommunication channel may use standard Internet protocols. As a result,the system 110 may initiate data communication with the mobile device116 via the Internet.

The system 110 may be implemented based on interactive voice response(IVR) technology or other customer service system platforms. In oneembodiment, the system 110 may include data storage 120, an IVRcomponent 130, an automated identification component 140, a websiteproblem solver tool 150, a switching component 160 and a processor 170,among other possibilities. Discussions with respect to each of them areprovided below.

1.1 Data Storage

The data storage 120 may be any one or a combination of a hard drive,random access memory, flash memory, read-only memory and a memory cache,among other possibilities. The data storage 120 may include anon-transitory computer-readable medium. The data storage 120 mayinclude a database implemented as relational database tables orstructured XML documents.

In one example, the database may be a customer database, including aplurality of customer profiles, where each profile may be identified bya unique customer identifier. In one example, the customer identifiermay be a phone number associated with the customer. The customer profilemay include authentication information to verify identity of thecustomer, including, but not limited to, phone number, address, mother'smaiden name, favorite place, social security number, account number,password, passcode, PIN number, and biometrics such as voice print,among other possibilities. In some cases, each customer profile maytrack the history of interactions that the system 110 had with thecustomer, for example, the customer's previous requests for service andagents whom the customer previously spoke to. The call center may beoperated by a telephone banking service provider, a credit card serviceprovider, an insurance service provider or a travel-related serviceprovider, among others. Each customer may be considered as a customer tothe service provider, and each customer profile may be considered as acustomer profile maintained by the service provider. To that end, eachcustomer profile may include transaction history, invoices, credits,rewards and payment information, among other information associated withthe customer.

In one example, the data storage 120 may store one or more call queuesrepresentative of customers on hold waiting to speak to agents. Thequeue may be a priority queue, a first-in-first-out data structure, orany other queuing data structures known to those skilled in the art.

In one example, the data storage 120 may store greetings orannouncements in audio or other formats to be played to the customers.

1.2 Interactive Voice Response Component

The IVR component 130 may accept incoming requests for service from thecustomers 112, and provide automated, voice-based services to thecustomers 112. As discussed earlier, the request for service may beinitiated by the customer in any form, including but not limited to,voice call, text, a request generated from a website, a voiceinteractive device or program, among many other possibilities.

The IVR component 130 may present stored greetings and audio prompts tothe customers. The IVR component 130 may receive inputs from thecustomers via dual tone multi-frequency (DTMF) tones. For example, whena customer 112 calls the call center 100, the customer 112 may use DTMFtones to perform various functions, such as navigating through a voicemenu of questions.

The IVR component 130 may also rely on speech recognition to recognizespeech inputs from the customers. For instance, the IVR component 130may include a real-time speech recognition module to recognize acustomer's speech in real time.

1.3 Automated Identification Component

The system 110 may for security purposes authenticate the customersbefore providing any substantive services to each customer.

For example, the automated identification system 140 may authenticate acustomer before adding the customer to a call queue. In one embodiment,the automated identification component 140 may service authenticationinquiries by providing a verbal dialogue to the customer 112. The verbaldialogue may include prerecorded or dynamically generated audioinstructions to the customer 112. The automated identification component140 may request authentication information from the customer 112 toprove his or her identity by providing authentication information. Theauthentication information may include information that may identify thecustomer, including but not limited to, address, mother's maiden name,favorite place, social security number, account number, password,passcode, PIN number, and biometrics such as voice print, among otherpossibilities. In the other embodiments, the authenticationidentification component 140 may request the authentication informationfrom the customer using the same communication mechanism as the customer112 uses to initiate the request for service, e.g., by using texting,website, voice interactive device or program, among other possibilities.The customer 112 may respond to the authentication identificationcomponent 140 via telephone keypad input or speech input by mobiledevice 116, website, or a voice interactive device or program.

The authentication identification component 140 may compare thecustomer's input to pre-stored authentication information. If thecustomer's input fails to match the pre-stored authenticationinformation, the customer may be required to retry and/or provideadditional responses. In the alternative or after a predetermined numberof failed attempts, the customer may be denied substantive services bythe call center 100, or placed in a queue to speak to a live agent forgeneral inquiries.

In one example, the automated identification component 140 mayauthenticate the customer without prompting for any input. The automatedidentification component 140 may authenticate the customer based oncalling line identification, calling number delivery, calling numberidentification and calling line identification presentation, among otherpossibilities. For instance, the automated identification component 140may authenticate the customer based on the phone number that thecustomer is calling from.

1.4 Website Problem Solver Tool

The website problem solver tool 150 may identify each customer's causefor the request for service via a data communication channel bypresenting to the customer one or more questions. The customer's causefor the request for service may include, but not limited to, context ofthe request and nature of the customer's needs, among otherpossibilities. The tool 150 may present the one or more questions to thecustomer's mobile device 116, or any other device accessible to thecustomer with capabilities to provide the questions to the customer.

In one example, the tool 150 may transmit an instruction to the mobiledevice 116 to launch a mobile browser on the customer's mobile device116. The tool 150 may instruct the mobile device 116 to open one or moreweb pages, web applications, or web sites on the customer's mobiledevice 116. For example, the tool 150 may send to the mobile device 116a uniform resource locator (URL) that identifies the web page to beopened in the mobile browser. The web page may be implemented by anyprogramming or scripting language, including but not limited to, Java™,C, C# or C++, Perl, Python, and TCL, among other possibilities. The webpage may belong to the call center and provide one or more questions toascertain the customer's cause for the request. The questions may becrafted and arranged in a manner that gradually reduces the customer'sscope of inquiry. FIGS. 6-11 provide exemplary questions that may bepresented to the customer. The customer may respond to each question byproviding an input to the web page using the customer's mobile device116.

The tool 150 may include a web server that receives the customer's inputto the web page. The web server may run one or more server applications,including, but not limited to, an HTTP server, an FTP server, a CGIserver, a database server, a Java sever, and the like. The web servermay be one or more general purpose computers capable of executing webapplications, programs or scripts.

In one example, once the customer is placed in a call queue, the tool150 may send an instruction to the mobile device 116 to open a web pagein the browser. The customer may respond to questions on the web pagewhile waiting in the call queue.

As the customer responds to the questions, the customer's cause for therequest becomes refined or specific. Once the customer's cause for therequest is ascertained, the tool 150 may present solutions via one ormore web pages to address the customer's cause for the request. In oneembodiment, the solutions are predefined responses. If the presentedsolution addresses all the information sought by the customer forpurposes of placing the request for service, the customer may terminatethe request. If the customer does not find the information he or sheneeds on the web page, the customer may continue staying on the line towait for his/her service.

In one example, the tool 150 may relay each input provided by thecustomer to the processor 170 which may determine the customer's causefor the request. The processor 170 may identify an agent with a skillset suitable to address the customer's cause for the request. Theprocessor 170 may route the customer's request to the identified agent.If the identified agent is busy, the processor 170 may remove thecustomer from the original queue, and add the customer to a queuespecifically associated with the identified agent.

Sometimes, instead of identifying a single suitable agent to answer thecustomer, the processor 170 may identify a group of agents suitable toanswer the customer, and add the customer to a queue associated with thegroup. A group may contain subgroups with more refined and specificskill sets, and each subgroup may have its own queue. As the customer'scause for the request becomes more refined and specific, the processor170 may pinpoint the group or subgroup in the best position to answerthe customer's request, and move the customer to the relevant queue.

In another example, instead of removing the customer from the originalqueue, the processor 170 may escalate the customer's position in theoriginal queue and direct the customer to the identified agent as soonas that agent becomes available.

In some embodiments, the tool 150 may present to the customer statusinformation about the customer's waiting status in the call queue. Thetool 160 may receive the customer's position in the queue from theprocessor 170, and display the customer's position in the queue in theweb page. As the customer responds to more and more questions, theprocessor 170 may gradually escalate the customer's position in thequeue. In one example, the processor 170 may escalate the customer'sposition in the queue after the customer's each input.

The processor 170 may provide the customer's escalated position to thetool 150. The tool 160 may in turn display the customer's escalatedposition in the web page. The tool 150 may receive an estimate of thecustomer's wait time from the processor 170. For example, as thecustomer becomes escalated in the queue, the customer's estimated waittime becomes reduced.

The tool 150 may display in the web page any update of the customer'sposition in the queue or any update of the customer's estimated waittime. Such display may encourage the customer to respond to as manyquestions as possible. FIGS. 6-11 provide exemplary web pages whichdisplay the customer's escalated position in the queue and reduced waitperiod as the customer answers each question.

As a result, the tool 150 may tend to the customer's needs, and help thecustomer to avoid extensive wait time in the queue. As a result, theagents may have more time to deal with complex interactions. Thus, thetool 150 may increase an overall efficiency of the system 110.

1.5 Switching Component

The switching component 160 may intercept incoming requests for serviceto the call center 100 for destination routing. The switching component160 may refer to one or more switches, including a plurality of localswitches and a central switch. The switching component 160 may include atelephone exchange or telephone switch, such as an automated calldistributor (ACD) type switch, a private branch exchange (“PBX”), or asession initiation protocol (“SIP”) switch, or some other suitableswitches capable of processing requests for service. In one example, theswitching component 160 may be connected to the PSTN via a plurality oftrunks or links.

In one example, when the switching component 160 receives a request forservice, the switching component 160 may alert the processor 170 aboutthe request. The processor 170 may determine how to route the request.For instance, the processor 170 may first instruct the switchingcomponent 160 to route the request to a voice menu implemented by theautomated identification component 140 or the IVR component 130. Oncethe processor 170 determines a suitable agent to answer the request, theprocessor 107 may send a routing instruction to the switching component160, which in turn may route the request to the agent. When the agent isnot yet available, the switching component 160 may temporarily place thecustomer on hold in the queue.

1.6 Processor

The processor 170 may refer to a single data processor on a singlecomputing device or a collection of data processors. The collection ofdata processors may reside on a single computing device or spread acrossmultiple computing devices.

The processor 170 may execute computer program code stored in the datastorage 120 or a memory. In one example, the processor 170 may executecomputer program code representative of functionalities of variouscomponents of the system 110, including for example the IVR component130, the automated identification component 140 and the website problemsolver tool 150, among other possibilities.

In one example, when a customer 112 places a request for service withthe call center 100, the processor 170 may instruct the automatedidentification component 140 to present one or more authenticationquestions to the customer 112, and retrieve a customer profile from thedata storage 120 to verify the customer's response to the authenticationquestions. If there is no existing customer profile associated with thecustomer, the processor 170 may create a profile for the customer andstore it in the data storage 120.

Once the customer passes authentication, the processor 170 may add thecustomer to a queue of waiting customers, and calculate an estimatedwait time before the customer can speak to an agent.

The processor 170 may instruct the website problem solver tool 150 toopen a web page to the customer. In one embodiment, the web page may beopened on the customer's mobile device 116. The web page may present oneor more questions requiring the customer's input to ascertain thecustomer's cause for the request. The processor 170 may ascertain thecustomer's cause for the request based on the customer's input on theweb page. The processor 110 may determine an agent suitable to addressthe customer's request by taking into consideration of the customerprofile, the customer's cause for the request, the skill set andexperience level of the agents, and availability of the agents. Theprocessor 170 may reward customers who respond to the questions byproviding monetary or other prizes to the customers, as these customersmay eliminate or reduce agent's response time. The processor may removethe customer from the queue where the customer is originally placed. Theprocessor may provide a routing instruction to the switching component160 to route the customer's request to the determined agent. If theagent is not immediately available, the processor may add the customerto a queue specifically associated with the agent. Sometimes, theprocessor 170 may determine a group of agents suitable to address thecall. The processor may provide a routing instruction to the switchingcomponent 160 to route the customer's request to the next availableagent in that group. If none of the agents in that group are immediatelyavailable, the processor 170 may add the customer to a queuespecifically associated with that group.

The processor 170 may update the customer's profile to include one ormore of the following: the customer's cause for the request, thecustomer's input on the web page, and the agent whom the customer speaksto, among other possibilities.

FIG. 2 is a flow chart 200 illustrating example steps that may beexecuted by the processor 170 according to one aspect of the presenttechnology. At 202, the processor 170 may queue a request for servicereceived from the customer. For instance, the processor 170 may queue acustomer's call received via a voice communication channel generatedfrom the customer's mobile device 116. At 204, the processor may senddata output to the customer to ascertain the customer's cause for therequest via a data communication channel. At 206, the processor mayreceive data input from the customer via the data communication channelindicative of the customer's cause for the request. For instance, theprocessor may receive data input from the customer's mobile device 116.At 208, the processor may identify an agent from a plurality of agentssuitable to address the customer's cause for the request. At 210, theprocessor may adjust the customer's position in the queue based on theidentified agent. A 212, the processor may determine a routinginstruction about routing the customer's request to the identifiedagent.

FIG. 3 is a flow chart 300 illustrating example steps that may beexecuted by the processor 170 according to another aspect of the presenttechnology. At 302, the processor 170 may receive authenticationinformation from a customer. The authentication information may bereceived over a voice communication channel or other communicationmechanisms. At 304, the processor may authenticate the customer bycomparing the authentication information received from the customer topredetermined authentication information. The predeterminedauthentication information may be retrieved from the data storage 120.At 306, the processor may place the customer in a call queue. Theprocessor may calculate the customer's wait time. At 308, the processormay send one or more questions to the customer. For example, the processmay open a web page on the customer's mobile device. The web page maydisplay one or more questions requiring the customer's input. At 310,the processor may determine if the customer responds to any question. Ifthe customer does not respond to the question, at 312, the processor maydetermine if the customer terminates the call. If the customer does notterminate the call, at 314, the system may keep the customer in thequeue until an agent becomes available. If the customer terminates thecall, at 316, the processor may remove the customer from the queue.However, if the customer responds to the question, at 318, the processormay ascertain the customer's cause for the request. At 320, theprocessor may identify an agent suitable to answer the customer. At 322,the processor may adjust the customer's position in the queue. At 324,the processor may recalculate the customer's wait time. Once theprocessor ascertains the customer's cause for the request, the processormay identify a suitable solution to address the customer's cause for therequest and display the solution on the web page.

2. Agents and Agent Terminals

The agent terminal 118 may include one or more of the following: aphone, a headset, a handset, a software-based phone a computer, acamera, a microphone, a speaker, or any type of devices suitable forhandling requests for service from customers. The agent terminal 118 maybe connected with the switching component 160 via, for example, internaltelephone wiring. The agent terminal 118 may include software orhardware for performing packet-based data transmission to transmit datasuch as voice, video, or text. For instance, the agent terminal 118 mayaccept email requests, and may also engage each customer through a chatinterface or an instant message interface.

The agent 114 may access each customer's profile via the agent terminal118. The agent may have a preview of the queue of customers. Before theagent is connected to any customer, the agent may view the customer'sprofile at the agent terminal 118 so as to be able to readily assist thecustomer once connected. While viewing the customer's profile, the agentmay view the customer's cause for the request as indicated in thecustomer's profile, the customer's response to any of the web pagequestions, and any prior interaction such as exchanges that the customerhad with the call center 100. With that information, the agent may notneed to repeat questions that were previously presented to the customer,thereby saving time of the agent and the customer.

The agents 114 working at the call center 100 may be divided by, orassigned to, groups designated for handling specific tasks or specificcustomers. The groups may have distinct skill sets. One group of generalagents may be trained to answer general questions to identify thecustomer's cause for the request, and direct the customers tospecialized agents who are able to address the customer's specificneeds. Each group of specialized agent may have subgroups with morespecific, distinct skill sets.

By way of example, a call center of a commercial website offeringtravel-related services may include a group of general agents toidentify the customer's cause for the request. The call center may alsoinclude groups of specialized agents who are familiar with making a newreservation, changing an existing reservation and promotion deals,respectively. The group of agents who are familiar with making a newreservation may include subgroups each specialized in reserving flight,cruise, hotel, and car rental. The subgroup of agents specialized inmaking cruise reservation may include more distinct subgroups of agentsdivided based on travel destinations, including Europe, Asia, NorthAmerica, South America, Australia and Africa.

Each group or subgroup may have its associated queue of waitingcustomers. The length of each queue may vary depending on the customerdemands. For instance, the queue associated with the group of generalagents responsible for general questions may generally be longer thanqueues associated with groups of specialized agents.

In one embodiment, when the customer passes authentication, the customermay be first placed in a queue associated with the group of agentstrained to answer general questions. Once the processor 170 starts toascertain the customer's cause for the request, the processor 170 maymove the customer to a queue associated with a group of specializedagents trained to address the customer's specific needs. As thecustomer's cause for the request becomes more refined and specific, oras the customer's needs become particularized, the processor may movethe customer to the queue of a subgroup of agents more qualified toanswer the customer.

3. Customer's Mobile Device

The customer's mobile device 116 may be a mobile telecommunicationdevice, including but not limited to, a smart phone, a cell phone, awired or cordless phone, a radiotelephone, a tablet computer, a personaldigital assistant (PDA), a laptop and a personal communications system(PCS) terminal, among other possibilities. The mobile device 118 maycommunicate with other devices via one or more communication towersusing a wireless communication protocol, e.g., Global System for mobilecommunications (GSM), Code division multiple access (DMA), wideband CDMA(WCDMA) and 802.11x, among other possibilities. The mobile device 116may be associated with a phone number. The mobile device 116 may accessthe Internet. The mobile device 116 may run third-party applications.

The mobile device 116 may have a graphical user interface, such as, butnot limited to, a capacitive touch screen panel or a liquid crystaldisplay (LCD). As shown in FIGS. 6-11, the mobile device 116 may displayweb content associated with a URL.

In one embodiment, when the customer 112 places a request for servicewith the call center 100, the mobile device 116 may receive aninstruction from the website problem solver tool 150 to launch a mobilebrowser on the mobile device 116 and open a web page designated by thetool 150 in the mobile browser.

4. Exemplary Operations

FIG. 4 illustrates a high-level process flow of the call center system110 according to one aspect of the disclosed technology. First, acustomer 112 places a request for service to activate a customer servicesession. The customer places the request via a mobile device 116, suchas a smart phone, a website or an application, among otherpossibilities. The system 110 at the call center 100 prompts thecustomer 112 for authentication information. The system 110authenticates the customer via the automated identification component140. Once the customer is authenticated, the system 110 places thecustomer in a call queue. The system 110 reviews the customer profileand provides one or more questions to the customer. For example, thesystem 110 may open a web page on the customer's mobile device via thewebsite problem solver tool 150, where the web page contains one or morequestions. The customer responds to questions while continuously stayingin the queue. Each time the customer responds to a question, the systemescalates the customer's position in the queue and reduces thecustomer's wait time. Each question may be crafted to solicit thecustomer's cause for the request. For example, each question may reducethe scope of customer's inquiry. As the customer specifies his or hercause for the request, the customer sees on the web page that his or hername advances in the queue.

The system identifies a suitable solution to address the customer'sinquiry. The system may provide the solution through the web page. Ifthe solution meets the customer's needs, the customer can terminate therequest for service and be removed from the call queue. However, if thecustomer is not satisfied with the solution, or the system is unable toidentify a suitable solution to be presented to the customer, the systemidentifies a suitable agent to answer the customer's request for serviceand moves up the customer in the queue.

In one embodiment, the customer may opt out of web page participation.The customer may stay in the queue until an agent becomes available toanswer the customer's request. Based on the customer's cause for therequest, the system may indicate how much time the customer could havesaved by answering questions provided on the web page.

FIGS. 5-12 illustrate exemplary user interface of the customer's mobiledevice 116 for allowing the customer to interact with the call center.In FIG. 5, the customer 112 may initiate a call with the call center 100by dialing a phone number associated with the call center. Once thecustomer 112 is authenticated, the mobile device 116 may receive aninstruction from the call center system 110 to display a web page with aseries of questions to ascertain the customer's cause for the request.The questions may be crafted to reduce the scope of the customer'sinquiry. For example, as illustrated in FIGS. 6-11, the customer may beasked to identify his or her cause for the request. Each successivequestion may be narrower than its preceding question. In the illustratedexample, a call center of a commercial website offering travel-relatedservices may help the customer to book a reservation. As shown in FIGS.6-11, as the customer answers each question, the customer's position inthe queue becomes escalated, and the customer's wait time becomesreduced.

Once the customer completes the reservation on the web page, thecustomer may terminate the call. Of course, if the customer isunsatisfied with the web page solution, or wishes to speak to an agent,the customer may refuse to participate in the web page questions, andmay stay on hold until a next agent becomes available as illustrated inFIG. 12.

While certain implementations of the disclosed technology have beendescribed in connection with what is presently considered to be the mostpractical and various implementations, it is to be understood that thedisclosed technology is not to be limited to the disclosedimplementations, but on the contrary, is intended to cover variousmodifications and equivalent arrangements included within the scope ofthe appended claims. Although specific terms are employed herein, theyare used in a generic and descriptive sense only and not for purposes oflimitation. For example, the disclosed technology may be applied to manyindustry areas, including but not limited to commercial transactions,reservation systems, and financial services such as telephone banking,credit card and insurance services, among many other possibilities.

Certain implementations of the disclosed technology are described abovewith reference to block and flow diagrams of systems and methods and/orcomputer program products according to example implementations of thedisclosed technology. It will be understood that one or more blocks ofthe block diagrams and flow diagrams, and combinations of blocks in theblock diagrams and flow diagrams, respectively, can be implemented bycomputer-executable program instructions. Likewise, some blocks of theblock diagrams and flow diagrams may not necessarily need to beperformed in the order presented, or may not necessarily need to beperformed at all, according to some implementations of the disclosedtechnology.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meansthat implement one or more functions specified in the flow diagram blockor blocks.

Implementations of the disclosed technology may provide for a computerprogram product, comprising a computer-usable medium having acomputer-readable program code or program instructions embodied therein,said computer-readable program code adapted to be executed to implementone or more functions specified in the flow diagram block or blocks. Thecomputer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational elements or steps to be performed on the computer or otherprogrammable apparatus to produce a computer-implemented process suchthat the instructions that execute on the computer or other programmableapparatus provide elements or steps for implementing the functionsspecified in the flow diagram block or blocks.

Accordingly, blocks of the block diagrams and flow diagrams supportcombinations of means for performing the specified functions,combinations of elements or steps for performing the specified functionsand program instruction means for performing the specified functions. Itwill also be understood that each block of the block diagrams and flowdiagrams, and combinations of blocks in the block diagrams and flowdiagrams, can be implemented by special-purpose, hardware-based computersystems that perform the specified functions, elements or steps, orcombinations of special-purpose hardware and computer instructions.

This written description uses examples to disclose certainimplementations of the disclosed technology, including the best mode,and also to enable any person skilled in the art to practice certainimplementations of the disclosed technology, including making and usingany devices or systems and performing any incorporated methods. Thepatentable scope of certain implementations of the disclosed technologyis defined in the claims, and may include other examples that occur tothose skilled in the art. Such other examples are intended to be withinthe scope of the claims if they have structural elements that do notdiffer from the literal language of the claims, or if they includeequivalent structural elements with insubstantial differences from theliteral language of the claims.

1. A system for routing a request for service in a call centercomprising: a non-transitory computer-readable medium storing datarepresentative of a queue of customers waiting to be serviced; and aprocessor configured to: queue the request for service initiated by acustomer; send data output to the customer to ascertain the customer'scause for the request via a data communication channel; receive datainput indicative of the customer's cause for the request; identify anagent from a plurality of agents suitable to address the caller's causefor the request; adjust the customer's position in the queue based onthe identified agent; and determine a routing instruction about routingthe customer's request to the identified agent.
 2. The system of claim1, wherein the customer initiates the request for service in the form ofa call via a voice communication channel generated from the customer'smobile device.
 3. The system of claim 1, wherein the customer initiatesthe request for service in the form of a text message from thecustomer's mobile device.
 4. The system of claim 1, wherein the customerinitiates the request for service from a website.
 5. The system of claim1, wherein the customer initiates the request for service from anin-vehicle system of an automobile.
 6. The system of claim 1, whereinthe customer initiates the request for service from a voice interactivedevice.
 7. The system of claim 1, wherein the processor sends the dataoutput to the customer's mobile device via the data communicationchannel, and receives the data input from the customer's mobile devicevia the data communication channel.
 8. The system of claim 2, whereinthe processor is configured to simultaneously connect with the mobiledevice via the voice communication channel and the data communicationchannel.
 9. The system of claim 2, further comprising: a switch coupledto the processor, the switch configured to receive the request via thevoice communication channel and route the request to the identifiedagent based on the routing instruction.
 10. The system of claim 1,wherein the processor is configured to communicate with the customer viainteractive voice response.
 11. The system of claim 1, wherein the dataoutput includes at least one of the customer's position in the queue andthe customer's wait time.
 12. The system of claim 7, wherein theprocessor is configured to send data representative of an URL address tothe mobile device, and the URL address identifies a web page containinginformation to ascertain the customer's cause for the request.
 13. Thesystem of claim 12, wherein the processor is configured to send aninstruction to the mobile device to open the URL address in a webbrowser of the mobile device.
 14. The system of claim 2, wherein thevoice communication channel transmits voice over a public-switchedtelephone network.
 15. The system of claim 1, wherein the datacommunication channel transmits data over a packed switched network. 16.The system of claim 2, wherein the processor is configured toauthenticate the customer via the voice communication channel.
 17. Thesystem of claim 1, wherein the processor is configured to calculate thecustomer's wait time in the queue based on the adjusted customer'sposition in the queue.
 18. The system of claim 7, wherein the processoris configured to send data representative of a plurality of questions tothe mobile device, receive data input from the mobile device via thedata communication channel in response to at least one question, andadjust the customer's position in the queue based on the data input. 19.A method for routing a request for service in a call center, comprising:storing, by a non-transitory computer-readable medium, datarepresentative of a queue of customers waiting to be serviced; queuing,by a processor, the request for service initiated by a customer;sending, by the processor, data output to the customer to ascertain thecustomer's cause for the request via a data communication channel;receiving, by the processor, data input indicative of the customer'scause for the request; identifying, by the processor, an agent from aplurality of agents suitable to address the customer's cause for therequest; adjusting, by the processor, the customer's position in thequeue based on the identified agent; and determining, by the processor,a routing instruction about routing the customer's request to theidentified agent.
 20. The method of claim 19, wherein the customerinitiates the request for service in the form of a call via a voicecommunication channel generated from the customer's mobile device. 21.The method of claim 19, wherein the customer initiates the request forservice by one or more of the following: a text message from thecustomer's mobile device, a website, and a voice interactive device. 22.The method of claim 20, further comprising simultaneously maintainingconnections with the mobile device via the voice communication channeland the data communication channel.
 23. The method of claim 20, furthercomprising: receiving the request by a switch via the voicecommunication channel; and routing the request to the identified agentbased on the routing instruction.
 24. The method of claim 19, whereinthe processor sends the data output to the customer's mobile device viathe data communication channel, and receives the data input from thecustomer's mobile device via the data communication channel.
 25. Themethod of claim 24, further comprising sending, by the processor, datarepresentative of an URL address to the mobile device, wherein the URLaddress identifies a web page containing information to ascertain thecustomer's cause for the request.
 26. The method of claim 25, furthercomprising sending, by the processor, an instruction to the mobiledevice to open the URL address in a web browser of the mobile device.27. The method of claim 19, further comprising calculating, by theprocessor, the customer's wait time in the queue based on the adjustedcustomer's position in the queue.
 28. A non-transitory computer-readablemedium, comprising computer-executable instructions, for causing one ormore processors to execute the computer-executable instructions to:queue a request for service initiated by a customer; send data output tothe customer to ascertain the customer's cause for the request via adata communication channel; receive data input via the datacommunication channel, the data input indicative of the customer's causefor the request; identify an agent from a plurality of agents suitableto address the customer's cause for the request; adjust the customer'sposition in the queue based on the identified agent; and determine arouting instruction about routing the customer's request to theidentified agent.